package org.softmed.neodatis.util.provider;

import java.io.File;

import org.neodatis.odb.ODB;
import org.softmed.neodatis.util.PrimaryKeyManager;

public interface ODBProvider {
	public ODB getODB() throws Throwable;

	// to remove when client -side triggers are supported
	public ODB getCleanODB() throws Throwable;

	public void restart() throws Throwable;

	public void start() throws Throwable;

	public void stop() throws Throwable;

	public void erase() throws Throwable;

	public void refreshClassDefinitions() throws Throwable;

	public File getDatabaseFile() throws Throwable;

	public PrimaryKeyManager getPrimaryKeyManager();
}
